iT邦幫忙

2021 iThome 鐵人賽

DAY 19
0
Software Development

你還在用手動測試嗎?30 天帶你學會前端自動化測試框架 - Cypress系列 第 19

自動化測試,讓你上班擁有一杯咖啡的時間 | Day 19 - 如何寫入檔案和讀取檔案

  • 分享至 

  • xImage
  •  

此系列文章會同步發文到個人部落格,有興趣的讀者可以前往觀看喔。

  1. writeFile() 語法

    cy.writeFile(filePath, contents)
    cy.writeFile(filePath, contents, encoding)
    cy.writeFile(filePath, contents, options)
    cy.writeFile(filePath, contents, encoding, options)
    
  2. 可以寫成 txt 檔或是 json 檔,檔案會放在 cypress/fixtures 底下

    cy.writeFile('path/to/message.txt', 'Hello Cypress')
    cy.writeFile('path/to/data.json', { name: 'Jennifer', email: 'jennifer@example.com' })
    
  3. 在檔案的最後附加文字可以用 { flag: 'a+' }

    cy.writeFile('path/to/message.txt', 'Hello World', { flag: 'a+' })
    
  4. readFile() 語法

    cy.readFile(filePath)
    cy.readFile(filePath, encoding)
    cy.readFile(filePath, options)
    cy.readFile(filePath, encoding, options)
    
  5. 動手寫程式

    describe('測試寫檔案', function() {
        it('應該可以在test1檔案寫東西', function() {
            cy.writeFile('cypress/fixtures/test1.txt', 'Hello Cypress!\n')
        })
    
        it('應該可以在test1檔案上附加文字', function() {
            cy.writeFile('cypress/fixtures/test1.txt', 'Hello Cypress!!',  {flag: 'a+',})
        })
    
        it('應該可以在test2檔案寫東西', function() {
            cy.writeFile('cypress/fixtures/test2.json', { name: 'Jennifer', email: 'jennifer@example.com' })
        })
    })
    
    describe('測試讀檔案', function() {
        it('應該可以在test1檔案讀檔案', function() {
            cy.readFile('cypress/fixtures/test1.txt').should('eq','Hello Cypress!\nHello Cypress!!')
        })
    
        it('應該可以在test2檔案讀檔案', function() {
            cy.readFile('cypress/fixtures/test2.json').its('name').should('eq', 'Jennifer')
        })
    })
    
  6. 看結果
    https://ithelp.ithome.com.tw/upload/images/20211003/20140883wXOHWxB5Ok.png
    https://ithelp.ithome.com.tw/upload/images/20211003/20140883FybRgzUp5h.png
    https://ithelp.ithome.com.tw/upload/images/20211003/20140883YwQaaiSgT1.png

參考資料


上一篇
自動化測試,讓你上班擁有一杯咖啡的時間 | Day 18 - 如何提交表單
下一篇
自動化測試,讓你上班擁有一杯咖啡的時間 | Day 20 - invoke 的用法
系列文
你還在用手動測試嗎?30 天帶你學會前端自動化測試框架 - Cypress30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言